import { defineWrappedResponseHandler } from "#server/utils/handler"; import { R } from "#server/utils/response"; import { getCurrentUser } from "#server/utils/context"; import { getTempTokenFromCookie, clearTempTokenCookie } from "#server/service/agent/temp-token"; import { migrateTempSessions } from "#server/service/agent/session"; import { getAgentBySlug, getDefaultAgent } from "#server/service/agent/agent"; export default defineWrappedResponseHandler(async (event) => { const user = await getCurrentUser(event); if (!user) { return R.error("请先登录", null); } const agentSlug = getRouterParam(event, "agentSlug"); if (!agentSlug) { return R.error("参数无效", null); } const agent = await getAgentBySlug(agentSlug); if (!agent) { return R.error("agent 不存在", null); } const tempToken = getTempTokenFromCookie(event); if (!tempToken) { return R.success({ migrated: 0 }); } const count = await migrateTempSessions(tempToken, user.id, agent.id); clearTempTokenCookie(event); return R.success({ migrated: count }); });